#pragma once
#include<stdio.h>
#include<assert.h>
#include<stdlib.h>
#include<string.h>

void PrintSort(int* a, int n);
void InsertSort(int* a, int n);
void ShellSort(int* a, int n);
void SelectSort(int* a, int n);
void AdjustDown(int* a, int n, int root);
void HeapSort(int* a, int n);
void BubbleSort(int* a, int n);
void QuickSort(int* a, int left, int right);
void QuickSortNonR(int* a, int left, int right);
void MergeSort(int* a, int n);
void MergeSortNonR(int* a, int n);
void MergeSortFile(const char* file);
void CountSort(int* a, int n);
